package com.alquimia.identityaccess.domain.model;

/**
 * Created by Ivo on 12/07/2014.
 */
public interface UserRepository {

    public void create(User aUser);

    public void update(User aUser);

    public void delete(User aUser);

    public User userWithCredentials(
            String aUsername,
            String aEncryptedPassword);

    public User withUsername(
            String aUsername);

    public UserId nextIdentity();

    public User userOfId(UserId aUserId);
}
